import request from '@/config/axios'
import { DataItemVO }from '../dataitem'

// 数据共享 VO
export interface DataVO {
  id?: number // 主键
  dataName: string // 数据名称
  dataNum: number // 数据编号
  dataCount: string // 数据量
  dataSource: string // 数据来源
  dataDesc: string // 数据描述
  attachFile: string // 附件
  shareStatus: string // 共享状态
  dataUrl: string // 数据接口
  dataItems?: DataItemVO[] // 数据项
}

// 数据共享 API
export const DataApi = {
  // 查询数据共享分页
  getDataPage: async (params: any) => {
    return await request.get({ url: `/dr/data/page`, params })
  },

  // 查询数据共享详情
  getData: async (id: number) => {
    return await request.get({ url: `/dr/data/get?id=` + id })
  },

  // 新增数据共享
  createData: async (data: DataVO) => {
    return await request.post({ url: `/dr/data/create`, data })
  },

  // 修改数据共享
  updateData: async (data: DataVO) => {
    return await request.put({ url: `/dr/data/update`, data })
  },

  // 删除数据共享
  deleteData: async (id: number) => {
    return await request.delete({ url: `/dr/data/delete?id=` + id })
  },

  // 导出数据共享 Excel
  exportData: async (params) => {
    return await request.download({ url: `/dr/data/export-excel`, params })
  },

// ==================== 子表（共享数据项） ====================

  // 获得共享数据项列表
  getDataItemListByDataId: async (dataId) => {
    return await request.get({ url: `/dr/data/data-item/list-by-data-id?dataId=` + dataId })
  }
}